# Daemon configuration
telnet_port 4444
gdb_port 3333

# Interface - Wiggler-Type JTAG-device (see /usr/local/lib/openocd/interface/parport.cfg)
interface parport
parport_port 0x378
parport_cable wiggler
jtag_speed 0
jtag_nsrst_delay 20
jtag_ntrst_delay 20

# Start the OpenOCD daemon and reset the processor
init
reset halt

# (See /usr/local/lib/openocd/target/str710.cfg)
# Start slow, speed up after reset
jtag_khz 10

# Use combined on interfaces or targets that can't set TRST/SRST separately
reset_config trst_and_srst srst_pulls_trst

# Jtag scan chain
# format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE)
jtag_device 4 0x1 0xf 0xe

# target <type> <startup mode>
# target arm7tdmi <reset mode> <chainpos> <endianness> <variant>
target arm7tdmi little 0 arm7tdmi
[new_target_name] configure -event reset-start { jtag_khz 10 }
[new_target_name] configure -event reset-init { jtag_khz 6000 }
[new_target_name] configure -event old-gdb_program_config { script event/str710_program.script }

target_script 0 reset oocd_flash.script

# Flash-configuration STR710FZ2/STR711FR2:
#   internal flash at address 0x40000000 size 256kB (0x40000)
#   internal ram   at address 0x20000000 size  64kB (0x10000)
# a 16kB working area inside RAM:
working_area 0 0x2000C000 0x4000 nobackup

# Flash bank str7x <base> <size> 0 0 <target#> <variant>
flash bank str7x 0x40000000 0x00040000 0 0 0 STR71x
flash bank str7x 0x400C0000 0x00004000 0 0 0 STR71x
